package com.lz.gamll.feign.cart;

import com.lz.gmall.cart.entity.CartItem;
import com.lz.gmall.cart.vo.AddCartVo;
import com.lz.gmall.common.result.Result;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestHeader;

import java.util.List;

@FeignClient("service-cart")
public interface AddCartFeignClient {

    /**
     * 调用添加购物车
     * @param skuId 商品id
     * @param skuNum 商品数量
     * @return
     */
    @GetMapping("api/inner/cart/addCart/{skuId}/{skuNum}")
    public Result<AddCartVo> addCart(@PathVariable("skuId") Long skuId, @PathVariable("skuNum") Integer skuNum);


    /**
     * 获取购物车中选中的商品集合
     * @return
     */
    @GetMapping(value = "api/inner/cart/getCheckedCartItem")
    public Result<List<CartItem>> getCheckedCartItem();

    /**
     * 远程调用，生成订单之后，删除购物车中选中生成订单的商品
     * @return
     */
    @GetMapping(value = "api/inner/cart/deleteCheckedCartItem")
    public Result deleteCheckedCartItem();
}
